Computing devices often utilize a communication network or a series of communication networks to exchange data. Companies and organizations operate computer networks that interconnect a number of computing devices to support operations or provide services to other parties. The computing systems can be located in a single geographic location or located in multiple, distinct geographic locations (e.g., interconnected via private or public communication networks). For instance, data centers or data processing centers may include a number of interconnected computing systems that provide computing resources to customers of the data center. Using virtualization technologies, utilization of data center resources may be increased by configuring a single physical computing device to host one or more computing instances that appear to operate as independent computing devices to users of a data center.
For computing devices in a data center that communicate with external networks, a service provider can implement various types of network address translation (NAT) techniques in order to conserve the number of external or public IP (internet protocol) addresses used and to assist in protecting computing nodes within the data center. In one example network address translation implementation, a service provider may assign internal private network addresses to each computing device in a hosted computing network that facilitates communication within the hosted network. The service provider may then implement a network address translation computing device that correlates a finite set of external public network addresses and ports to each of the computing devices in the hosted computing network. The network address translation computing device operates as a gateway translating communications between the internal private network address of the computing devices in the hosted computing network and the finite set of externally public network addresses.